The field of computers has been plagued over the years with computer viruses. A computer virus is a program that is executed without the knowledge or authorization of the user of the computer--the virus typically performing unauthorized and undesirable actions on components of the computer and/or information stored on the computer.
These programs are often introduced for malicious reasons, and frequently result in substantial damage to the computer and/or data stored on the computer. For example, some viruses alter or destroy data stored on the computer hard drive, scramble characters on video display screens, consume computer or network resources, oftentimes resulting in considerable downtime for the computer user and his office. In less serious cases, an attack by a computer virus may force an organization to replicate or recover data and files before it can resume normal operation. In more serious cases, data and files destroyed by a virus may become unrecoverable, forever shutting down that aspect of the organization's operations. Additionally, in some cases the integrity of an organization's data bases may have been attacked without warning, and the organization continues operation using inaccurate data, possibly resulting in injuries, losses and damages.
Computer viruses have the particular property of being able to replicate themselves and thus spread from one computer file to another, one computer volume to another, and one machine to another. The viruses may be spread in a number of ways. For example, a virus may spread by adding itself to code that already exists within some program on a computer, then changing that preexisting code in such a way that the newly added viral code will be executed. This enables the virus to execute again and replicate itself in yet another program.
Viruses typically propagate by opportunistically copying themselves to ("infecting") a disk that happens to be accessible when a computer executes the virus. If a user transports an infected disk to a second computer and the second computer executes the virus, the virus then attempts to infect disks on the second computer, and so on.
Many software solutions have been devised to help counter these viruses such as for example virus scanner programs. The virus scanner program scans a file or set of files for particular known viruses. Typically, these "anti-virus" programs both detect and remove known viruses. The anti-virus program searches for "signatures", including characteristic behaviors of viruses and removes any found virus. These programs are generally successful at eliminating the viruses that are known to the scanner program. However, viruses are oftentimes created by malicious computer hackers who are continuously producing new and more damaging computer viruses. It is estimated that at least several new viruses are introduced each day.
Although the virus detection programs are good at detecting and eliminating viruses, they are limited in that they can generally only detect viruses known to them via their virus signature files. The anti-virus program relies on a fairly extensive library of known computer viruses. As a result, new viruses with signatures not listed in the virus signature files of a computer oftentimes will go by undetected. Thus, signature scanning programs require frequent updates to keep them current with the increasing number of viruses. If the antivirus developer is lax in providing updates, or the user is lax in obtaining and employing available updates, a signature scanning anti-virus program can rapidly lose its effectiveness. Consequently, the new virus may be able to damage the computer and/or the information stored thereon. Therefore, a conventional virus detection program may become obsolete within only a few months after installation.
Furthermore, the aforementioned updating problem is not solely limited to virus signature files but also is prevalent in other areas where particular software utilizes reference files that need to be updated frequently in order for the system using the software to operate at peak efficiency.
Accordingly, in light of the above, there is a strong need in the art for an improved system and method for updating the virus signature files of a computer and/or computer system without putting the onus of updating on the user so that an anti-virus program stored thereon will be able to detect and eliminate viruses including newly created ones. Moreover, there is a strong need in the art for an improved system and method for updating reference files of a computer and/or computer system without putting the onus of updating on the user.